#ifndef GAMETOOLBOX_WINDOW_WINDOWSWINDOW_H
#define GAMETOOLBOX_WINDOW_WINDOWSWINDOW_H

#include "WindowInterface.h"
#include <Windows.h>


class WindowsWindow : public WindowInterface
{
public:
	WindowsWindow(void);
	~WindowsWindow(void);

public: //WindowInterface
	const bool initialise( const int windowWidth,  const int windowHeight, const WindowColourDepthEnumeration colourDepth, bool fullscreen );
	void shutdown( void ); 

	void redraw( void ) const;

	const bool isFullscreen( void ) const { return m_bIsFullscreen; }
	void setFullscreen( const bool value );

private: //Members

	bool		m_bIsFullscreen;	// Whether the window is fullscreen
	HDC			m_hDC;				// Private GDI Device Context
	HGLRC		m_hRC;				// Permanent Rendering Context
	HWND		m_hWnd;				// Holds Our Window Handle
	HINSTANCE	m_hInstance;		// Holds The Instance Of The Application
};

#endif // GAMETOOLBOX_WINDOW_WINDOWSWINDOW_H

